package com.ruoyi.business.service;

import java.util.List;
import java.util.Map;

import com.ruoyi.business.domain.ZrsMbManage;

/**
 * 责任书模版管理Service接口
 * 
 * @author Yuhf
 * @date 2023-11-18
 */
public interface IZrsMbManageService 
{
    /**
     * 查询责任书模版管理
     * 
     * @param mbId 责任书模版管理主键
     * @return 责任书模版管理
     */
    public ZrsMbManage selectZrsMbManageByMbId(Long mbId);

    /**
     * 查询责任书模版管理列表
     * 
     * @param zrsMbManage 责任书模版管理
     * @return 责任书模版管理集合
     */
    public List<ZrsMbManage> selectZrsMbManageList(ZrsMbManage zrsMbManage);
    
    /**
     * 新增责任书模版管理
     * 
     * @param zrsMbManage 责任书模版管理
     * @return 结果
     */
    public int insertZrsMbManage(ZrsMbManage zrsMbManage);

    /**
     * 修改责任书模版管理
     * 
     * @param zrsMbManage 责任书模版管理
     * @return 结果
     */
    public int updateZrsMbManage(ZrsMbManage zrsMbManage);
    
    //复制
    public int copyEdit(Long mbId);
    //获取所有的业务部门进行考核设置
    public List<Map> selectZbManageKhDeptAll();
    public List<Map> selectZbManageKhUserAll();
    //获取选中的  业务考核部门  通过模版id
    public Long[] selectSelZbManageKhDeptListByMbId(ZrsMbManage zrsMbManage);
    public Long[] selectSelZbManageKhUserListByMbId(ZrsMbManage zrsMbManage);
    public int selectSelZbManageKhDeptCountByMbId(Long mbId);
    //保存  模版和考核部门的关系
    public int updateZrsMbManageShDeptToSaveDept(ZrsMbManage zrsMbManage);
    public int updateZrsMbManageShUserToSaveUser(ZrsMbManage zrsMbManage);
    
    //获取所有的业务部门进行审核设置
    public List<Map> selectZbManageShDeptAll();
    
    public int selectSelZbManageKhUserCountByMbId(Long mbId);
    
    //生成责任书
    public int generateZrsManage(ZrsMbManage zrsMbManage);
    
}
